有时候在维护供应商信息的时候,会出现如下图所示的错误,错误数据为:
请求的页包含过时数据。此错误可能是因为使用浏览器的定位按钮(例如浏览器的“后退”按钮)所引起。视图对象 ExtBankAccountsAM.ExtBankBranchesVO1 不包含记录。显示的记录可能已被删除,或者未正确初始化视图对象的当前记录。要继续进行,请选择位于应用产品页顶部的主页链接以返回主菜单。然后,使用应用产品的定位控件(菜单、链接等),而不是浏览器的定位控件(如返回、转发)访问此页。
实际上在维护数据的时候并没有按照像描述所说的那样操作,且按照描述的解决方法也不继续正常维护。这个时候,需要去后台查询相应的数据,比如截图的数据是在维护供应商银行账号的时候出现,这个时候,通过SQL取查询供应商银行分行信息,在分行的id列会出现错误的数据,比如:branch_id=-1或者其他数字(也遇到过-3的数字)。
可通过命令:select t.branch_id ,t.* from iby.IBY_EXT_BANK_ACCOUNTS t order by t.branch_id desc;
查询错误数据。此时已经没有办法再从前台再去正常维护分行数据,有两种选择:
1. 直接将此分行数据信息删除(备份错误数据),重新从界面上维护分行数据;
2. 查询出需要维护的分行的id,然后直接update进去。
个人建议是直接删除数据,这样不会因为update错误数据而导致其他错误,毕竟从前台页面维护比从后台更新更准确。